Motion supporting device, motion supporting system, motion supporting method, and storage medium

ABSTRACT

An motion supporting device includes a body-motion-information acquirer configured to acquire body motion information of an exercising player, a dynamic-information collector (a communicator) configured to collect dynamic information of an implement related to the exercise, and a timing determiner configured to determine, on the basis of the body motion information and the dynamic information, timing for informing the player of advice.

BACKGROUND

1. Technical Field

The present invention relates to an motion supporting device, an motionsupporting system, an motion supporting method, and a storage medium.

2. Related Art

There has been known, for example, a device that informs a playerplaying sports such as soccer of advice as described in Japanese PatentNo. 5504568 (Patent Literature 1). The device described in PatentLiterature 1 can detect position information of a plurality of players,determine, on the basis of the position information, a player who canreceive a pass, and inform a player attempting a pass of appropriateadvice.

However, in Patent Literature 1, it is likely that play of the player isdisturbed when the advice is informed to the player. Specifically, sincethe advice is informed to the player during game progress, the player isdistracted by the informed advance and sometimes cannot play as theplayer should originally play. In this way, depending on a situation onthe player side, the play of the player is disturbed by the informing ofthe advice.

In Patent Literature 1, it is hard to say that the advice is surelytransmitted to the player. Specifically, since the player concentrateson the play, for example, while the player is attempting a pass, theplayer sometimes fails to hear the advice. In this way, depending on asituation on the player side, even if the advice is provided, it islikely that the advice is not transmitted to the player.

SUMMARY

An advantage of some aspects of the invention is to solve at least apart of the problems, and the invention can be implemented as thefollowing forms or application examples.

Application Example 1

An motion supporting device according to this application exampleincludes: a body-motion-information acquirer configured to acquire bodymotion information of an exercising player; a dynamic-informationcollector configured to collect dynamic information of an implementrelated to the exercise; and a timing determiner configured todetermine, on the basis of the body motion information and the dynamicinformation, timing for informing the player of advice.

According to this application example, it is possible to collectinformation related to a movement of the player from the body motioninformation and collect information related to a progress state of playfrom the dynamic information.

For example, it is possible to estimate, from the collected information,a period of time when the play is suspended and the player is taking arest. In such a period of time (timing), the advice is easilytransmitted to the player and does not disturb the play.

Therefore, it is possible to determine timing when advice generated forthe exercising player is easily surely transmitted to the player withoutdisturbing the play of the player as much as possible.

Application Example 2

The body-motion-information acquirer in the application example mayinclude a body motion sensor worn on the body of the player, and thebody motion sensor may measure the body motion information of theplayer.

According to this application example, the body motion sensor canmeasure the body motion information on which the movement of the playeris directly reflected.

Application Example 3

The body motion information in the application example may include atleast one of acceleration information and angular velocity informationgenerated according to a movement of the player.

According to this application example, it is possible to preciselymeasure movements concerning a linear movement and a rotational movementof the player according to the acceleration information and the angularvelocity information.

Application Example 4

The dynamic-information collector in the application example may includea sensor unit including at least one of an acceleration sensor, anangular velocity sensor, a ball sensor, and a positioning sensorattached to the implement. The sensor unit collects the dynamicinformation.

According to this application example, it is possible to select a sensorunit corresponding to a way of movement of the implement and a type ofthe implement.

Application Example 5

The timing determiner in the application example may calculate a playmotion indicator serving as an indicator of a play motion of the playeron the basis of the dynamic information and the body motion informationand determine the timing on the basis of an increase/decrease tendencyof the play motion indicator.

According to this application example, according to the play motioninformation including information related to the movement of the playerand information related to the progress state of play, it is easy todetect a state in which the player can receive the advice.

Application Example 6

The play motion indicator in the application example may be calculatedby adding the dynamic information and the body motion information havinga positive correlation to the play motion of the player and bysubtracting the dynamic information having a negative correlation to theplay motion of the player.

According to this application example, it is possible to calculate theplay motion indicator on which various movements of the implement andthe player are reflected.

Application Example 7

The timing determiner in the application example may detect aninflection point, which is a point in time when the increase/decreasetendency of the play motion indicator changes from a decrease tendencyto an increase tendency and, when the play motion indicator after elapseof a predetermined period from the inflection point is equal to orsmaller than a predetermined motion amount, determine that it is thetiming for informing the advice.

According to this application example, it is possible to determine,according to the increase/decrease tendency of the play motion index,the timing on the basis of various play situations in which, forexample, the player stops during the play and the player is taking arest.

Application Example 8

The motion supporting device according to the application example mayfurther include: an informer configured to inform the advice; and anadvice output section configured to output the advice to the informer,and the advice output section may select a valid advice at the timingdetermined by the timing determiner out of generated pieces of adviceand output the valid advice to the informer.

According to this application example, it is possible to inform theplayer of generated advice at appropriate timing with the informer andthe advice output section.

Application Example 9

An motion supporting method according to this application exampleincludes: acquiring body motion information of an exercising player;collecting dynamic information of an implement related to the exercise;determining, on the basis of the body motion information and the dynamicinformation, timing for informing the player of advice; and selecting avalid advice at the timing and informing the player of the effectingadvice.

According to this application example, it is possible to collectinformation related to a movement of the player from the body motioninformation and collect information related to a progress state of playfrom the dynamic information. For example, it is possible to estimate,from the collected information, a period of time when the play issuspended and the player is taking a rest. In such a period of time(timing), the advice is easily transmitted to the player and does notdisturb the play. Therefore, it is possible to determine timing whenadvice generated for the exercising player is easily surely transmittedto the player without disturbing the play of the player as much aspossible and inform the player of the advice.

Application Example 10

A storage medium according to this application example has storedtherein a computer program for causing a computer to execute: acquiringbody motion information of an exercising player; collecting dynamicinformation of an implement related to the exercise; determining, on thebasis of the body motion information and the dynamic information, timingfor informing the player of advice; and selecting a valid advice at thetiming and informing the player of the effecting advice.

According to this application example, it is possible to collectinformation related to a movement of the player from the body motioninformation and collect information related to a progress state of playfrom the dynamic information. For example, it is possible to estimate,from the collected information, a period of time when the play issuspended and the player is taking a rest. In such a period of time(timing), the advice is easily transmitted to the player and does notdisturb the play. Therefore, it is possible to determine timing whenadvice generated for the exercising player is easily surely transmittedto the player without disturbing the play of the player as much aspossible and inform the player of the advice.

Application Example 11

An motion supporting system according to this application exampleincludes: the motion supporting device described above; an informerconfigured to inform the advice; and an advice output section configuredto select a valid advice at the timing out of generated pieces of adviceand output the valid advice to the informer.

According to this application example, it is possible to collectinformation related to a movement of the player from the body motioninformation and collect information related to a progress state of playfrom the dynamic information. For example, it is possible to estimate,from the collected information, a period of time when the play issuspended and the player is taking a rest.

In such a period of time (timing), the advice is easily transmitted tothe player and does not disturb the play. Therefore, it is possible todetermine timing when advice generated for the exercising player iseasily surely transmitted to the player without disturbing the play ofthe player as much as possible and inform the player of the advice.

Application Example 12

The motion supporting system according to the application example mayfurther include a detecting device configured to detect the dynamicinformation.

According to this application example, since the detecting device andthe motion supporting device are different devices, it is possible toacquire the dynamic information from various implements.

Application Example 13

The motion supporting system according to the application example mayfurther include a terminal device, and the body-motion-informationacquirer and the informer may be mounted on the terminal device.

According to this application example, since functions of the terminaldevice can be minimized, for example, it is possible to realize areduction in the size and a reduction in the weight of the terminaldevice worn on the player.

Application Example 14

The motion supporting system according to the application example mayfurther include a display device, and the informer may be mounted on thedisplay device.

According to this application example, for example, it is possible toconstruct a system configured by combining a detecting device thatanalyzes and detects an image signal capable of comprehensivelydetecting movements of the implement and the player, a large displaydevice that displays the advice, and the like.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described with reference to the accompanyingdrawings, wherein like numbers reference like elements.

FIG. 1 is an explanatory diagram showing the overview of an motionsupporting system in a first embodiment.

FIG. 2 is an explanatory diagram showing the exterior of an motionsupporting device in the first embodiment.

FIG. 3 is a block diagram for explaining schematic functions of themotion supporting system.

FIG. 4 is an explanatory diagram showing a management table and anadvice file group.

FIGS. 5A to 5F are explanatory diagrams concerning timing determination.

FIGS. 6A and 6B are detailed explanatory diagrams concerning the timingdetermination.

FIG. 7 is a flowchart for explaining a flow of timing determinationprocessing.

FIG. 8 is a flowchart for explaining a flow of advice output processing.

FIG. 9 is a block configuration diagram showing the schematicconfiguration of an motion supporting system in a second embodiment.

FIG. 10 is a block configuration diagram showing the schematicconfiguration of an motion supporting system in a third embodiment.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

Embodiments of the invention are explained below with reference to thedrawings. Note that, in the figures referred to below, layers andmembers are sometimes shown in scales different from actual scales inorder to show the layers and the members in recognizable sizes.

First Embodiment Overview of an Motion Supporting System

FIG. 1 is an explanatory diagram showing the overview of an motionsupporting system in a first embodiment. FIG. 2 is an explanatorydiagram showing the exterior of an motion supporting device. Note that,in this embodiment, an motion supporting system that performs exerciseassistance for tennis is explained as an example. However, the inventioncan also be applied to motion supporting systems that perform supportrelated to various sports such as golf, baseball, and volleyball andmotion supporting systems that perform support of exercise other thansports such as rehabilitation exercise.

An motion supporting system 1 in this embodiment includes an motionsupporting device 3 worn on the body of a player PL who plays sports(tennis), sensor units 10 (10A, 10B, 10C, and 10D) attached to orincorporated in implements used in the sports, and the like. The motionsupporting device 3 and the sensor units 10 are connected to be capableof communicating various data by communication 2 such as near fieldradio. However, in the motion supporting system 1, a part of thesecomponents (elements) may be omitted or new components (elements) may beadded.

As shown in FIG. 1, the player PL grips a tennis racket RA and is readyto hit a ball BA. The sensor unit 10A is fixedly attached to the racketRA. The sensor unit 100 is incorporated in the inside of the ball BA. Abag BG including a spare racket RB not used in play and sportsimplements is placed beside the player PL. The sensor unit 10B isfixedly attached to the racket RB. The sensor unit 10D incorporated in afitting formed in a clip shape is attached to the bag BG to hold acarrying handle portion of the bag BG.

The motion supporting device 3 shown in FIG. 2 is a wristwatch-typedevice worn on the wrist of the player PL. The motion supporting device3 includes a body motion detector 20 and a display 91. The body motiondetector 20 detects body motion information of the player PL. Thedisplay 91 is a display device capable of displaying images, characters,icons, and the like.

The motion supporting device 3 acquires body motion information of theplayer PL with the body motion detector 20. The motion supporting device3 communicates with the sensor units 10 and collects dynamic informationfrom a plurality of implements. A controller 40 (explained below) of themotion supporting device 3 analyzes the dynamic information of theimplements and the body motion information of the player PL anddetermines whether the player PL is in a state in which the player PLcan receive advice. If the player PL is in the state in which the playerPL can receive advice, the controller 40 determines that it isappropriate timing for informing the advice.

Examples of the timing when the player PL can easily receive the adviceinclude a state in which the player PL can change awareness and feelingduring play. For example, a period when the player PL stops a movementand takes a short rest during the play can be considered a state inwhich the player PL switches awareness and feeling to the next play.Such a period of time is appropriate timing for informing the advice.For example, in a period when the player PL suspends the play because ofa change of an implement such as the racket RA, an accident, or thelike, since the play is not disturbed, the player PL can easily receivethe advice.

The motion supporting device 3 also generates advice for the player PLusing the body motion information of the player PL and the dynamicinformation of the implements. When the appropriate timing for informingthe advice is determined, at that timing, the motion supporting device 3selects valid advice and informs the player PL of the valid advice. Whensuch advice is present, the motion supporting device 3 flashes an entiredisplay region of the display 91 and makes the player PL aware of thepresence of the advice and, thereafter, displays words, an image, andthe like of the advice.

The motion supporting system 1 including such a series of functions isexplained in detail below.

Configuration of the Motion Supporting System

FIG. 3 is a block diagram for explaining the schematic functions of themotion supporting system. The motion supporting system 1 includes thesensor units 10 and the motion supporting device 3. The sensor units 10and the motion supporting device 3 are connected to be capable oftransmitting and receiving data by the communication 2.

The sensor units 10A, 10B, 10C, and 10C included in the sensor units 10are respectively attached to, for example, the implements related to theexercise such as tennis as explained above.

The sensor units 10 incorporate MEMS (Micro Electro Mechanical Systems)sensors such as an acceleration sensor, a gyro sensor, and a ballsensor, a sensor for satellite positioning such as a GPS (GlobalPositioning System), and a communication adapter. These sensorsincorporated in the sensor units 10 are dynamic sensors attached toimplements and the like to detect movements of the implements and thelike.

Note that the sensor units 10 are equivalent to the detecting device.

The acceleration sensor measures, in every unit time, a change in anacceleration signal in one axial direction or at least two axialdirections crossing each other. The gyro sensor measures, in every unittime, a change in an angular velocity signal about one rotation axis orat least two rotation axes crossing each other. The ball sensor is asensor including a movable ball of a conductor in a container includinga plus electrode and a ground electrode. When vibration is applied tothe container, presence or absence of conduction occurs according tomovement of the ball. An appearance state of the presence or absence ofconduction is output as a ball-movement detection signal.

The respective MEMS sensors include AD (Analog to Digital) conversioncircuits and arithmetic circuits. The MEMS sensors convert theacceleration signal, the angular velocity signal, the ball-movementdetection signal detected by the MEMS sensors into acceleration data,angular velocity data, and ball-movement detection data and calculateimplement dynamic data representing a momentum from the data. The datarepresenting the momentum is calculated from the acceleration data andthe angular velocity data according to a publicly-known method (seeJP-A-2004-81632 and JP-A-2004-252618). The detection of theball-movement detection signal by the ball sensor and the calculation ofthe data representing the momentum can be realized by a method disclosedin JP-A-2011-29014 and the like.

The implement dynamic data calculated in this way is transmitted to themotion supporting device 3 via the communication 2 by a wirelesscommunication function (not shown in the figure) included in the sensorunits 10. Note that the implement dynamic data is equivalent to thedynamic information.

The motion supporting device 3 includes the body motion detector 20, acommunicator 30, a clocking section 33, the controller 40, a storage 50,and an informer 90, and the like.

As a preferred example, the body motion detector 20 is a sensor unitincluding an acceleration sensor. The body motion detector 20 measure,in every unit time, a change in acceleration in one axial direction orat least two axial directions crossing each other. The body motiondetector 20 calculates various kinds of information concerning a bodymotion of the player PL using data of the change in the acceleration andoutputs the information to the controller 40 as body motion data.Specifically, the body motion detector integrates an amount of themeasured change of the acceleration and calculates a momentum per unittime of the player PL. The body motion detector 20 may include a gyrosensor and a sensor for satellite positioning and may be configured tobe capable of discriminating and measuring a body motion of the playerPL from more directions. The sensors included in the body motiondetector 20 are body motion sensors attached to an organism or the liketo detect a movement of the organism or the like.

Note that the body motion detector 20 is not limited to theconfiguration including the acceleration sensor, the gyro sensor, andthe sensor for satellite positioning. The body motion sensor 20 mayinclude a pulse sensor that detects a pulse rate of the player PL, atemperature sensor that detects information concerning an externalenvironment, and a pressure sensor.

Note that the body motion data is equivalent to the body motioninformation and the body motion detector 20 is equivalent to thebody-motion-information acquirer.

The communicator 30 is a near field radio adapter having a communicationprotocol common to the sensor units 10. The communicator 30 receivesimplement dynamic data transmitted from the sensor units 10. Thecommunicator 30 distinguishes, for each of the sensor units 10A, 10B,10C, and 10D, implement dynamic data received from the sensor units andoutputs the implement dynamic data to the controller 40.

Note that the communicator 30 that receives the implement dynamic datais equivalent to the dynamic-information collector.

The clocking section 33 is a real time clock and includes clockingfunctions such as a clock function, a timer function, and a stopwatchfunction. The clocking section 33 outputs a sampling cycle to thebody-motion detector 20 with the clock function and outputs timeinformation to the body motion detector 20, the communicator 30, and thecontroller 40 at any time with the clock function.

The controller 40 includes a processor such as a CPU (Central ProcessingUnit). The controller 40 is a control device and an arithmetic unit thatintegrally control the sections of the motion supporting device 3. Thecontroller 40 realizes various functions of the motion supporting device3 according to various computer programs (not shown in the figure)including a determination program 81 and an output program 83 stored inthe storage 50. Note that the controller 40 is equivalent to thecomputer.

The controller 40 includes functional sections such as an exerciseanalyzer 41, an advice generator 43, a timing determiner 45, and anadvice output section 47. However, these functional sections are onlyexamples. Not all of the functional sections are always required. Thecontroller 40 may include functional sections other than thesefunctional sections.

The exercise analyzer 41 analyzes an exercise state of the player PLusing apart of body motion data of the player PL and implement dynamicdata. The exercise state is information concerning a way of exercise,for example, what kind of movement the player PL has performed and howmuch different the movement has from an ideal movement. The respectivekinds of information are successively generated for each kind of play.The exercise analyzer 41 successively outputs the analyzed exercisestate to the advice generator 43 for each kind of play as exercise stateinformation of the player PL. A unit of play in the exercise analyzer 41and the advice generator 43 is, for example, one kind of play from thestart to the end of each one motion such as a swing during receiving anda swing during service. Even if play belongs to the same category, typesof the play may be further subdivided. For example, in the service,first service and second service may be treated as different kinds ofplay. In the receiving, a forehand, a backhand, a lob, a volley, asquare stance, and an open stance may be treated as different kinds ofplay.

The advice generator 43 generates, on the basis of the exercise stateinformation of the player PL successively output from the exerciseanalyzer 41, advice for play performed by the player PL. The advicegenerator 43 may perform invalidation and deletion processing ofunnecessary advice in the past.

When generating advice for each kind of play, the advice generator 43stores the advice in the storage 50 as files of a moving image andsound. A group of the stored files is an advice file group 70. Theadvice generator 43 manages the stored advice files using a managementtable 60. The management table 60 includes information indicatingwhether the advice files are valid or invalid. These kinds ofinformation are updated by the advice generator 43.

The advice file is invalidated by the advice generator 43 in a situationin which the advice file is valid at a point in time of generation butbecomes information in the past as the play progresses or the advicefile is improved by the player PL before generated advice is informed tothe player PL.

Processing for determining invalidation of the advice may be performedaccording to a method of setting a term of validity and conditions ofvalidity when the advice is generated and invalidating the advice whenthe term of validity expires or the conditions of validity are notsatisfied.

Processing for generating advice for the player PL from the body motiondata and the implement dynamic data in the exercise analyzer 41 and theadvice generator 43 is disclosed in JP-A-2013-27629.

Specific functions of the advice generator 43 are explained withreference to FIG. 4.

FIG. 4 is an explanatory diagram showing the management table and theadvice file group. The management table 60 is a table for managinginformation related to generated advice. The management table 60includes items of an ID 61, a validity flag 63, and a link destination65. The ID 61 is an identifier allocated to each generated advice. Thevalidity flag 63 is a flag representing whether advice is valid “1” orinvalid “0”. The link destination 65 is link destination information toan advice file in which generated advice is stored. As the advice filegroup 70, a moving image A file 71, a file for oral instruction 72, amoving image B file 73, an image file 74, a word file 75, a sound file76, and the like are illustrated. When the moving image A file 71 andthe moving image B file 73 are output to the informer 90, moving imagesare reproduced. When the image file 74 is output to the informer 90, animage is displayed. When the sound file 76 is output to the informer 90,sound is reproduced. When the word file 75 is output to the informer 90,words are displayed on the display 91. The file for oral instruction 72indicates that a training coach orally directly gives an instruction tothe player PL. Specifically, words to the effect that “a coach gives youadvice” is displayed on the display 91.

When generating an advice file as the advice file group 70 for each kindof play, the advice generator 43 adds one row to the management table60, stores “1” in the validity flag 63 of the ID 61 in the added row,and stores link destination information of the advice file in the linkdestination 65.

The advice generator 43 also performs batch processing for deleting rowsof the ID 61 in which the validity flag 63 is changed to invalid “0” atevery predetermined interval (e.g., one-minute interval).

In this way, in the management table 60, the information is managed suchthat a latest advice file valid for the player PL can be always providedirrespective of at which timing the management table 60 is referred toby the advice generator 43.

Referring back to FIG. 3, the timing determiner 45 is explained.

The timing determiner 45 determines, using the implement dynamic dataand the body motion data of the player PL, timing for informing advice.Specifically, the timing determiner 45 calculates a play motionindicator of the player PL using the implement dynamic data of movementsof the racket RA, the racket RB, the ball BA, and the bag BG detected atpredetermined time and the body motion data of the player PL. The playmotion indicator is an indicator for making it possible to distinguish astate of play of the player PL, for example, whether the player PL is ina time period when the player PL is taking a rest during play. Forexample, the play motion indicator is an indicator for making itpossible to determine that, even if there is no movement in the bodymotion data of the player PL, the player PL is performing play if theball BA and the racket RA or RB are moving and determine such a state.Conversely, by analyzing the play motion indicator, it is possible todetermine that a state of the player PL is a state such as a restbetween play and play. Such a state is a state in which the player PLcan receive advice. Timing for informing advice is included in such aperiod of time.

Timing determination is explained with reference to FIGS. 5A to 6B.

FIGS. 5A to 5F are explanatory diagrams concerning the timingdetermination. FIGS. 6A and 6B are detailed explanatory diagramsconcerning the timing determination.

In graphs of FIGS. 5A to 6B, the abscissa represents time t indicatingelapse of time and the ordinate represents a momentum per unit time attime t. FIG. 5A shows an momentum RA(t) at time t of the racket RA (thesensor unit 10A). Similarly, FIG. 5B shows a momentum RB(t) in theracket RB (the sensor unit 10B). FIG. 5C shows a momentum BA(t) in theball BA (the sensor unit 10C). FIG. 5D shows a momentum BG(t) in the bagBG (the sensor unit 10D). FIG. 5E shows a momentum PL(t) at time t ofthe player PL. FIG. 5F shows a play motion indicator M(t) of the playerPL at time t. The timing determiner 45 analyzes an increase/decreasetendency of the play motion indicator M(t) and determines timing forinforming advice.

The timing determiner 45 calculates the play motion indicator M(t)according to Expression 1 described below.

M(t)=RA(t)+RB(t)+BA(t)−BG(t)+PL(t)  (Expression 1)

In the play motion indicator M(t), when one of the racket RA and theracket RB is used while the player PL is playing, when the ball BA ismoving, and when the player PL is moving, RA(t), RB(t), BA(t), and PL(t)are added up. In the play motion indicator M(t), when the bag BG is usedwhile the player PL is taking a rest, BG(t) is subtracted.

Note that Expression 1 is an example. Other arithmetic expressions canalso be applied as long as the momentums RA(t), RB(t), BA(t), and PL(t)indicating a positive correlation with respect to a play motion of theplayer PL are added up and the momentum BG(t) indicating a negativemomentum with respect to the play motion is subtracted to calculate theplay motion indicator M(t).

Processing for determining timing for informing advice is explainedusing, as an example, a section between time t1 and time t2 and asection between time t3 and time t4 when the play motion indicator M(t)decreases in FIGS. 5A to 5F. In the section between time t1 and time t2,the timing determiner 45 determines that there is no appropriate timingfor informing advice. In the section between time t3 and time t4, thetiming determiner 45 determines that time t4 is timing appropriate forinforming advice.

The timing determination is explained in detail with reference to FIGS.6A and 6B.

A graph shown in FIG. 6A represents a curve Ma obtained by enlarging theplay motion indicator M(t) in the section between time t1 and time t2shown in FIG. 5F. A graph shown in FIG. 6B represents a curve Mbobtained by enlarging the play motion indicator M(t) in the sectionbetween time t3 and time t4 shown in FIG. 5F.

An inflection point CP shown in FIG. 6A is a point where a decreasetendency of the play motion indicator M(t) decreasing according to theelapse of time t is eliminated. Specifically, the timing determiner 45calculates a differential value of the play motion indicator M(t) (atilt of M(t) at time t), which changes according to the elapse of timet, and sets, as the inflection point CP, a point on a curve where adifferential coefficient of the differential value changes from anegative value to zero or a positive value.

A predetermined period THC is a value defining a time period thatelapses from the time of the inflection point CP.

A predetermined motion amount THM is a threshold for determining whetherthe player PL is taking a rest and is a value defining a motion amountbased on the inflection point CP in the play motion indicator (theordinate).

An evaluation point EP is a point on a curve at time when thepredetermined period THC elapses from the time of the inflection pointCP.

Note that, in the following explanation, the play motion indicator M(t)is abbreviated as M(t).

When M(t) of the evaluation point EP is equal to or smaller than a valueobtained by adding the predetermined motion amount THM to M(t) of theinflection point CP, the timing determiner 45 determines that the playerPL is taking a rest. Conversely, when M(t) of the evaluation point EPexceeds the value, the timing determiner 45 determines that the playerPL is not taking a rest and has shifted to the next play.

A specific example is explained with reference to FIGS. 6A and 6B.

FIG. 6A is an example of the latter case in which it is determined thatthe player PL is not taking a rest and has shifted to the next play.M(t2) of the evaluation point EP on the curve Ma exceeds the valueobtained by adding the predetermined motion amount THM to M(t1) of theinflection point CP. Therefore, it is determined that the player PL hasshifted to the next play without taking a rest.

FIG. 6B is an example of the former case in which it is determined thatthe player PL is taking a rest. M(t4) of the evaluation point EP on thecurve Mb is equal to or smaller than the value obtained by adding thepredetermined motion amount THM to M(t3) of the inflection point CP.Therefore, it is determined that the player PL is taking a rest. Sincethe player PL is taking a rest, the player PL can receive advice. Thatis, time t4 is timing appropriate for informing advice.

At time t2 of the evaluation point EP shown in FIG. 6A, since the playerPL has shifted to the next play, even if advice is generated, time t2 isinappropriate as timing for informing the advice. Time t4 of theevaluation point EP shown in FIG. 6B is appropriate as timing forinforming advice. When a valid advice file is present with reference tothe management table 60 at this timing, the advice is notified to theplayer PL.

Referring back to FIG. 3, the advice output section 47 is explained.

The advice output section 47 is a functional section executed whilebeing triggered by timing determined by the timing determiner 45. Theadvice output section 47 selects a valid advice file at a point in timewhen the advice output section 47 is executed (the determined timing)and outputs the advice file to the informer 90. Specifically, when beingexecuted, the advice output section 47 refers to the management table 60and repeats the ID 61 from “1” to a last number in order. In repeatedprocessing, when the validity flag 63 is “1”, the advice output section47 reads a file of the link destination 65 from the advice file group 70and outputs the read target advice file to the informer 90. When the ID61 is repeated to the last number, all advice files valid are output atthe determined timing. The player PL can check the informed files.

The storage 50 includes a storage device such as a ROM (Read OnlyMemory), a flash ROM, a RAM (Random Access Memory), an HDD (Hard DiskDrive), or an SSD (Solid State Drive). The storage 50 has stored thereinvarious computer programs for realizing the functions of the controller40, various files, and the like. The storage 50 includes a work area inwhich data being processed in various kinds of processing, processingresults, and the like are temporarily stored.

In the storage 50, the management table 60, the advice file group 70,and the like are stored. Further, computer programs such as thedetermination program 81 and the output program 83 are stored.

The determination program 81 is read and executed by the controller 40,whereby the function of the timing determiner 45 included in thecontroller 40 is realized.

The output program 83 is a computer program invoked from thedetermination program 81 and executed. The output program 83 is read andexecuted by the controller 40, whereby the function of the advice outputsection 47 is realized.

Processing of the determination program 81 and the output program 83 isexplained below with reference to flowcharts. Note that both of thedetermination program 81 and the output program 83 are equivalent to theexercise supporting program.

The informer 90 includes the display 91 and a sound output section 93.

The display 91 is a display device such as electronic paper, an LCD(Liquid Crystal Display), or an organic electroluminescence display. Thedisplay 91 performs various kinds of display based on display signalsoutput from the advice output section 47 of the controller 40. In thedisplay 91, the image file, the word file, the moving image file, andthe like stored in the advice file group 70 are developed in a displayregion.

The sound output section 93 includes a speaker and a piezoelectricvibrator. The sound output section 93 is a sound output device thatperforms various kinds of information based on output signals input fromthe controller 40. The sound output section 93 performs various soundoutputs based on sound signals output from the advice output section 47.The moving image file and sound data such as the sound file stored inthe advice file group 70 are reproduced.

Flow of an Motion Supporting Method

An motion supporting method is explained with reference to FIGS. 7 and8.

FIG. 7 is a flowchart for explaining a flow of timing determinationprocessing. FIG. 8 is a flowchart for explaining a flow of advice outputprocessing.

The flow shown in FIG. 7 is a flow of processing realized when thedetermination program 81 is read and executed by the controller 40. Theflow shown in FIG. 8 is a flow of processing realized when the outputprogram 83 is read and executed by the controller 40.

When FIGS. 6A and 6B are referred to as an example, the flows explainprocessing started from a state of a decrease tendency (the differentialcoefficient is a negative value) in the curve Ma and the curve Mb andfinished when the inflection point CP is detected and advice isinformed. Explanation of processing for determining whether the curve Maand the curve Mb are in the state of the decrease tendency is omitted.

In step S110, the controller 40 initializes a variable CNT and avariable CX. Specifically, the variable CNT is a variable for counting atime period that elapses from the time of the inflection point CP. Inthis step, “0” is set as an initial state. The variable CX is a variablethat makes it possible to confirm that the inflection point CP appears.In this step, “NULL” is set as an initial state. In a period from theappearance of the inflection point CP to the evaluation point EP(referred to as “inflection point processing is being performed”),content of M(t) is set in the variable CX. When the time exceeds theevaluation point EP, “NULL” is set again.

In step S120, the controller 40 acquires implement dynamic data and bodymotion data. Specifically, the controller 40 receives RA(t), RB(t),BA(t), and BG(t) from the sensor units 10 as the implement dynamic dataat time t. The controller 40 acquires PL(t) from the body motiondetector 20 as the body motion data at time t.

In step S130, the controller 40 calculates M(t) and substitutes an indexvalue of M(t) in the variable MX. Specifically, the controller 40calculates M(t) at time t using the above Expression 1 and substitutesM(t) in the variable MX.

In step S140, the controller 40 determines whether the inflection pointprocessing is not being performed. Specifically, the controller 40determines whether content of the variable CX is “NULL”. If the contentof the variable CX is “NULL”, the inflection point processing is notperformed (Yes), the controller 40 proceeds to step S150 in order toperform detection of a new inflection point CP. If the content of thevariable CX is not “NULL”, since the inflection point processing isbeing performed (No), the controller 40 proceeds to step S180 in orderto count a time period from the inflection point CP.

In step S150 and step S160, the controller 40 determines whether thevariable MX is the inflection point CP. Specifically, the controller 40calculates a differential coefficient at time t referring to aplay-motion index value in the past such as M (t−1) used in the lastloop. If the differential coefficient is zero or a positive value, thecontroller 40 determines that the variable MX is the inflection point CP(Yes) and proceeds to step S170. If the differential coefficient is anegative value, the controller 40 determines that the variable MX is notthe inflection point CP (No) and proceeds to step S120 in order toacquire the next implement dynamic data and the next body motion data.

In step S170, the controller 40 sets the inflection point as beingprocessed. The controller 40 sets, in the variable CX, content of thevariable MX of the appeared inflection point CP. The content of M(t) isset in the variable CX. This indicates that the inflection pointprocessing is being performed.

In step S180, the controller 40 measures a time period from theinflection point CP. Specifically, the controller 40 increments contentof the variable CNT.

In step S190, the controller 40 determines whether the variable CNT islarger than the predetermined period THC. Specifically, the number ofcounts equivalent to a time period of the predetermined period THC isstored in the predetermined period THC. If the variable CNT exceeds thepredetermined period THC (Yes), since the variable MX is the evaluationpoint EP, the controller 40 proceeds to step S200 and performsevaluation of the variable MX. If the variable CNT does not exceed thepredetermined period THC (No), the controller 40 proceeds to step S120in order to acquire the next implement dynamic data and the next bodymotion data.

In step S200, the controller 40 determines whether a difference betweenthe variable MX and the variable CX is equal to or smaller than thepredetermined motion amount THM. Specifically, when a difference amountbetween play motion index values of the variable CX (the inflectionpoint CP) and the variable MX (the evaluation point EP) is equal to orsmaller than the predetermined motion amount THM, the evaluation pointEP is timing appropriate for informing advice. Therefore, if thedifference is equal to or smaller than the predetermined motion amountTHM (Yes), the controller 40 proceeds to step S210 and outputs advice.If the difference exceeds the predetermined motion amount THM (No),since the player PL has shifted to the next play, the controller 40acquires the next implement dynamic data and the next body motion dataand proceeds to step S110 in order to detect a new inflection point CP.

In step S210, the controller 40 outputs advice. Processing in step S210is explained in detail with reference to FIG. 8.

In step S220, the controller 40 determines whether the play ends. If theplayer PL performs operation indicating that the play ends or there isno movement in the acquired implement dynamic data and body motion datafor a fixed period, the controller 40 determines that the play ends(Yes) and ends the flow. Otherwise (No), the controller proceeds to stepS110, acquires the next implement dynamic data and the next body motiondata, and detects a new inflection point CP.

Referring to FIG. 8, when step S210 is executed, the controller 40proceeds to step S310.

In step S310, the controller 40 accesses the management table.Specifically, the controller 40 reads the elements of the ID 61, thevalidity flag 63, and the link destination 65 into internal variablesand the like from the management table 60 stored in the storage 50.

In step S320, the controller 40 repeats processing by the number ofpieces of advice. Specifically, the controller 40 sets loop processingfor the number of elements of the ID 61. The loop processing is repeatedby the number of elements of the ID 61 from step 320 to step S360.

In step S330, the controller 40 acquires the validity flag 63 and storesthe validity flag 63 in a variable FL. The variable FL is an internalvariable in which the validity flag 63 is temporarily stored. Thecontroller 40 acquires content (“1” or “0”) of the validity flag 63 andsets the content in the variable FL.

In step S340, the controller 40 determines whether the variable FL islarger than 0. Specifically, if content of the variable FL is a valuelarger than 0 such as “1” (Yes), the controller 40 proceeds to step S350in order to inform an advice file of the link destination 65. If thecontent of the variable FL is a value equal to or smaller than 0 such as“0” (No), the controller 40 proceeds to step S360 in order to processthe next advice without informing target advice.

In step S350, the controller 40 outputs the advice file of the linkdestination 65. Specifically, the controller 40 designates the advicefile shown in the link destination 65 and outputs the advice file to theinformer 90. The informer 90 performs an output corresponding to a typeof the advice file.

In step S360, the controller 40 ends the processing when the processingis repeated by the number of pieces of advice. The controller 40 returnsto step S320 and repeats the processing until the processing is repeatedby the number of pieces of advice.

As explained above, with the motion supporting system 1 according tothis embodiment, it is possible to obtain effects explained below.

The motion supporting system 1 includes dynamic sensors indicated by thedynamic sensors (the sensor units 10) and acquires implement dynamicdata. The motion supporting system 1 acquires body motion data of theplayer PL with the body motion sensor (the body motion detector 20) ofthe motion supporting device 3.

The timing determiner 45 calculates the play motion indicator M(t) fromthe implement dynamic data and the body motion data. The timingdeterminer 45 analyzes an increase/decrease tendency of the play motionindicator M(t). If an increase or a decrease in the play motionindicator M(t) is equal to or smaller than the predetermined motionamount THM after the elapse of the predetermined period THC from theinflection point CP, the controller 40 determines that the player PL istaking a rest and can receive advice. The motion supporting system 1determines that the timing is timing for informing the player PL ofadvice.

On the other hand, advice information for the player PL is generated bythe advice generator 43. Like the timing determiner 45, the advicegenerator 43 acquires implement dynamic data and body motion data,generates, on a real time basis, advice information for the player PL,and manages latest advice information to be capable of being referred tousing the management table 60.

The timing determiner 45 acquires, at the determined timing, advice forthe player PL referring to the management table 60 and outputs theadvice to the informer 90.

In this way, it is possible to inform the player PL, who is playingexercise such as sports, of advice at appropriate timing.

Second Embodiment

FIG. 9 is a block configuration diagram showing the schematicconfiguration of an motion supporting system in a second embodiment. Anmotion supporting system 101 according to this embodiment is explainedwith reference to the figure. In embodiments explained below, componentssame as the components in the first embodiment are denoted by the samereference numerals and signs. Redundant explanation of the components isomitted.

The motion supporting system 101 includes the sensor units 10functioning as detecting devices, an motion supporting device 103, and aterminal device 105.

In the motion supporting system 101, the player PL wears the terminaldevice 105. An instructor CO such as a coach, who trains the player PL,uses the motion supporting device 103.

The terminal device 105 includes the body motion detector 20, thecommunicator 30, and the informer 90. The terminal device 105 measuresbody motion data of the player PL and transmits the body motion data tothe motion supporting device 103 via the communicator 30. Thecommunicator 30 of the terminal device 105 stays on standby to becapable of receiving advice information transmitted from the motionsupporting device 103. When the advice information is transmitted to thecommunicator 30, the communicator 30 immediately receives the adviceinformation and outputs the advice information to the informer 90. Theinformer 90 informs the advice information at timing when the adviceinformation is transmitted from the motion supporting device 103.

Note that the body motion detector 20 is equivalent to thebody-motion-information acquirer.

The motion supporting device 103 includes the communicator 30, thecontroller 40, and the storage 50. The controller 40 and the storage 50include the exercise analyzer 41, the advice generator 43, the timingdeterminer 45, the advice output section 47, the management table 60,the advice file group 70, the determination program 81, and the outputprogram 83. The motion supporting device 103 receives implement dynamicdata from the sensor units 10, receives body motion data of the playerPL from the terminal device 105, and determines appropriate timing inorder to inform the player PL of advice information. When valid adviceinformation is present at the determined timing, the motion supportingdevice 103 transmits the advice information to the terminal device 105.

According to this embodiment, it is possible to obtain effects explainedbelow in addition to the effects in the first embodiment.

Since the instructor CO of the player PL uses the motion supportingdevice 103, when the instructor CO directly gives an instruction to theplayer PL, the instructor CO can directly input the instruction to themotion supporting device 103 and transmit the instruction to the playerPL. Therefore, the player PL does not need to go to the instructor COand ask for instruction every time. The player PL can check adviceinformation through the terminal device 105.

Third Embodiment

FIG. 10 is a block configuration diagram showing the schematicconfiguration of an motion supporting system in a third embodiment.

In the embodiments explained above, the sensors are attached to theimplements and the player PL in order to acquire implement dynamic dataand body motion data. However, the invention is not limited to theconfiguration of the embodiments. The informer 90 informs adviceinformation on the device worn by the player PL. However, the inventionis not limited to the configuration of the embodiments. In thisembodiment, an example corresponding to such a form is explained.

An motion supporting system 201 includes a detecting device 204, anmotion supporting device 203, and a display device 205. The detectingdevice 204, the motion supporting device 203, and the display device 205are connected to one another to be capable of communicating data bycommunication 202.

The detecting device 204 includes a dynamic detector 210, a body motiondetector 220, and a communicator 230. The dynamic detector 210 and thebody motion detector 220 include image pickup devices such as CCDs(Charge Coupled Devices). The dynamic detector 210 and the body motiondetector 220 analyze image signals picked up by the image pickup devicesand detect, at every fixed interval (e.g., twice per one second), motionstates of movements of the implements and the player PL. The dynamicdetector 210 and the body motion detector 220 transmit the detectedmotion states to the motion supporting device 203 via the communicator230 as implement dynamic data and body motion data of the player PL.

The motion supporting device 203 includes the controller 40, the storage50, and the communicator 230. The motion supporting device 203determines appropriate timing from the implement dynamic data and thebody motion data acquired at every fixed interval via the communicator230 in order to inform the player PL of advice information. When validadvice information is present at the determined timing, the motionsupporting device 203 transmits the valid advice information to thedisplay device 205 via the communicator 230.

The display device 205 includes an informer 290 and the communicator230. The display device 205 is, for example, a projector that displaysan image on a large screen. The display device 205 stays on standby tobe capable of receiving information transmitted from the motionsupporting device 203. When receiving advice information for the playerPL, the display device 205 outputs the advice information to a displaysuch as a screen of the projector.

The communicators 230 provided in the respective devices arecommunication adapters having a common communication protocol. Thecommunicators 230 include, for example, wireless or wired LAN (LocalArea Network) adapters, USB (Universal Serial Bus) adapters, orBlueTooth (registered trademark) adapters.

According to this embodiment, it is possible to obtain effects explainedbelow in addition to the effects in the embodiments explained above.

In the motion supporting system 201, since it is unnecessary to attachthe devices to the implements and the player PL, preparation forattaching the devices before playing sports is unnecessary. Since theadvice information is displayed on the large screen or the like, thereis an effect that the advice information easily comes into view of theplayer PL and is easily transmitted to the player PL.

Such an motion supporting system 201 is relatively easily applied andeffective in squash rackets and sports in amusement facilities such as abowling alley.

Note that the invention is not limited to the embodiments. Variouschanges, improvements, and the like can be added to the embodiments.Modifications are explained below.

Modification 1

In the embodiments, the timing determiner 45 calculates the play motionindicator M(t) according to Expression 1. However, an expression forcalculating the play motion indicator M(t) is not limited to thisexpression. The play motion indicator M(t) reflecting movements of theimplements and the player PL only has to be calculated. For example, theexpression may be Expression 2 explained below.

M(t)=a1×(RA(t)+RB(t))/2+a2×BA(t)−a3×BG(t)+a4×PL(t)  (Expression 2)

In Expression 2, a1, a2, a3, and a4 are coefficients set according to adynamic state of the implements and a body motion state of the playerPL. For example, larger values are set for elements having largerinfluence than the other elements.

By using such Expression 2, the timing determiner 45 can more accuratelydetect a situation in which the player PL is taking a rest.

RA(t), RB(t), BA(t), BG(t), and PL(t) referred to in the aboveExpression 1, Expression 2, and the like are the momentums obtained bydetecting the respective motions at time t. However, a moving averagecalculated on the basis of momentums in the past including time t may beused.

By using the moving average, it is possible to calculate the play motionindicator M(t) according to data in which detection values such assudden noise are attenuated.

Modification 2

In the embodiments and the modification explained above, the validityflag 63 of the management table 60 includes the data of validity “1” andinvalidity “0”. However, data of the validity flag 63 is not limited tosuch data. For example, it is also possible that invalidity is set as“0”, an integer equal to or larger than “1” is used as informationrepresenting validity, and meaning of ordering of informing the playerPL of advice may be given using the magnitude of an integer value.

With such a configuration, it is possible to inform important adviceinformation among a plurality of kinds of advice information earlierthan the other kinds of information. It is possible to surely transmitmore important advice to the player PL.

Modification 3

The body motion detectors 20 and 220 in the embodiments and themodifications explained above may include various sensors such as apulse sensor, a strain gauge, a thermometer, a clinical thermometer, apiezoelectric sensor, an atmospheric pressure sensor, a manometer, anelectrochemical sensor, and a vibrometer. Information concerning amotion and a momentum of the player PL output from the sensors may beused as body motion data of the player PL. Further, mental data(presence or absence of vitality, etc.) of the player PL may be added tothe calculation of the play motion indicator M(t) using pulse intervaldata of pulse data.

Modification 4

The informers 90 and 290 in the embodiments and the modificationsexplained above may be provided in general-purpose informationprocessing terminals such as a smartphone, a tablet terminal, an HMD(head mounted display), and a notebook PC.

Modification 5

In the embodiments and the modifications explained above, tennis isexplained as an example of sports in which exercise implements are used.However, the sports are not limited to tennis. The invention isapplicable to any sports. For example, the invention is applicable tovarious sports such as team sports such as baseball, softball, soccer,rugby, and volleyball and individual competition sports such as tabletennis, badminton, golf, swimming, horse riding, and bowling. Play ofthe respective sports is not limited to play during a game and isapplicable in various scenes such as a scene in which a player practicessports while checking a form and a scene in which a player enjoys andplays a hobby and a game.

The entire disclosure of Japanese Patent Application No. 2015-081497,filed Apr. 13, 2015 is expressly incorporated by reference herein.

What is claimed is:
 1. An motion supporting device comprising: abody-motion-information acquirer configured to acquire body motioninformation of an exercising player; a dynamic-information collectorconfigured to collect dynamic information of an implement related to theexercise; and a timing determiner configured to determine, on the basisof the body motion information and the dynamic information, timing forinforming the player of advice.
 2. The motion supporting deviceaccording to claim 1, wherein the body-motion-information acquirerincludes a body motion sensor worn on a body of the player, and the bodymotion sensor measures the body motion information of the player.
 3. Themotion supporting device according to claim 2, wherein the body motioninformation includes at least one of acceleration information andangular velocity information generated according to a movement of theplayer.
 4. The motion supporting device according to claim 1, whereinthe dynamic-information collector includes a sensor unit including atleast one of an acceleration sensor, an angular velocity sensor, a ballsensor, and a positioning sensor attached to the implement, and thesensor unit collects the dynamic information.
 5. The motion supportingdevice according to claim 1, wherein the timing determiner calculates aplay motion indicator serving as an indicator of a play motion of theplayer on the basis of the dynamic information and the body motioninformation and determines the timing on the basis of anincrease/decrease tendency of the play motion indicator.
 6. The motionsupporting device according to claim 5, wherein the play motionindicator is calculated by adding the dynamic information and the bodymotion information having a positive correlation to the play motion ofthe player and by subtracting the dynamic information having a negativecorrelation to the play motion of the player.
 7. The motion supportingdevice according to claim 5, wherein the timing determiner detects aninflection point, which is a point in time when the increase/decreasetendency of the play motion indicator changes from a decrease tendencyto an increase tendency and, when the play motion indicator after elapseof a predetermined period from the inflection point is equal to orsmaller than a predetermined motion amount, determines that it is thetiming for informing the advice.
 8. The motion supporting deviceaccording to claim 6, wherein the timing determiner detects aninflection point, which is a point in time when the increase/decreasetendency of the play motion indicator changes from a decrease tendencyto an increase tendency and, when the play motion indicator after elapseof a predetermined period from the inflection point is equal to orsmaller than a predetermined motion amount, determines that it is thetiming for informing the advice.
 9. The motion supporting deviceaccording to claim 1, further comprising: an informer configured toinform the advice; and an advice output section configured to output theadvice to the informer, wherein the advice output section selects avalid advice at the timing determined by the timing determiner out ofgenerated pieces of advice and outputs the valid advice to the informer.10. An motion supporting method comprising: acquiring body motioninformation of an exercising player; collecting dynamic information ofan implement related to the exercise; determining, on the basis of thebody motion information and the dynamic information, timing forinforming the player of advice; and selecting a valid advice at thetiming and informing the player of the effecting advice.
 11. A storagemedium having stored therein a computer program for causing a computerto execute: acquiring body motion information of an exercising player;collecting dynamic information of an implement related to the exercise;determining, on the basis of the body motion information and the dynamicinformation, timing for informing the player of advice; and selecting avalid advice at the timing and informing the player of the effectingadvice.
 12. An motion supporting system comprising: the motionsupporting device according to claim 1; an informer configured to informthe advice; and an advice output section configured to select a validadvice at the timing out of generated pieces of advice and output thevalid advice to the informer.
 13. An motion supporting systemcomprising: the motion supporting device according to claim 2; aninformer configured to inform the advice; and an advice output sectionconfigured to select a valid advice at the timing out of generatedpieces of advice and output the valid advice to the informer.
 14. Anmotion supporting system comprising: the motion supporting deviceaccording to claim 3; an informer configured to inform the advice; andan advice output section configured to select a valid advice at thetiming out of generated pieces of advice and output the valid advice tothe informer.
 15. The motion supporting system according to claim 12,further comprising a detecting device configured to detect the dynamicinformation.
 16. The motion supporting system according to claim 12,further comprising a terminal device mounted with thebody-motion-information acquirer and the informer.
 17. The motionsupporting system according to claim 12, further comprising a displaydevice mounted with the informer.
 18. An motion supporting device thatacquires body motion information of an exercising player, collectsdynamic information of an implement related to the exercise, anddetermines, on the basis of the body motion information and the dynamicinformation, timing for informing the player of advice.
 19. The motionsupporting device according to claim 18, wherein the body motioninformation is measured by a body motion sensor worn on the player. 20.The motion supporting device according to claim 19, wherein the bodymotion information includes at least one of acceleration information andangular velocity information generated according to a movement of theplayer.